import requset from '@/utils/request'

/**
 * 获取员工列表
 * @param {object} params {page,pagesize,keyword,departmentId}
 */
export const getEmployeeAPI = (params) => {
  return requset('/sys/user', { params })
}

/**
 * 导出excel
 * @returns 二进制 blob
 */
export const exportExcelAPI = () => {
  return requset('/sys/user/export', {
    responseType: 'blob' // 指定响应数据为二进制类型
  })
}

/**
 * 下载导入模板
 * @returns 二进制 blob
 */
export const downlogExcelTemplateAPI = () => {
  return requset('/sys/user/import/template', {
    responseType: 'blob'
  })
}

/**
 * 上传员工列表
 * @param {formData} data 文件数据对象
 */
export const uploadExcelTemplateAPI = (data) => {
  return requset.post('/sys/user/import', data)
}

/**
 * 删除员工
 * @param {number} id 员工ID
 */
export const delDepartmentAPI = (id) => {
  return requset.delete(`/sys/user/${id}`)
}

/**
 * 新增员工
 * @param {object} data 员工列表数据
 */
export const addEmployeeAPI = (data) => {
  return requset.post('/sys/user', data)
}

/**
 * 获取员工详情
 * @param {number} id 员工id
 */
export const getEmployeeDetailAPI = (id) => {
  return requset(`/sys/user/${id}`)
}

/**
 * 修改员工
 * @param {object} data 员工列表数据
 */
export const updateEmployeeAPI = (data) => {
  return requset.put(`/sys/user/${data.id}`, data)
}

/**
 * 获取-已启用的角色列表
 */
export const addEmployeeRoleAPI = () => {
  return requset('/sys/role/list/enabled')
}

/**
 * 分配角色
 * @param {object} data {id,roleIds}
 */
export const assignRoleAPI = (data) => {
  return requset.put('/sys/user/assignRoles', data)
}
